<?php defined('TSTP_VERSION') or die('forbidden');


/**
* MLT Web Engine
* http://www.molotsoft.ru
*
* @package MLT_WE
* @subpackage Test_Types
* @author Ivan Chistyakov <ivan@molotsoft.ru>
* @version $Id: string.tstp.php 88 2008-09-25 08:26:54Z molotsoft@gmail.com $
* @link $HeadURL: http://test-types.googlecode.com/svn/tags/1.0.0/types/string.tstp.php $
*/


function tstp_string($var) {
	return is_string($var);
}

function tstp_str($var) { return tstp_string($var); }
function tstp_s($var) { return tstp_string($var); }


define('TSTP_ZERO_STRING', '');

function tstp_zero_string($var) {
	return is_string($var) && (strlen($var) === 0) && ($var === TSTP_ZERO_STRING);
}

define('TSTP_ZSTR', TSTP_ZERO_STRING);
define('TSTP_ZS', TSTP_ZERO_STRING);

function tstp_zstr($var) { return tstp_zero_string($var); }
function tstp_zs($var) { return tstp_zero_string($var); }


function tstp_range_string($var, $minlen = NULL, $maxlen = NULL) {
	return is_string($var) && (!is_null($minlen) ? (strlen($var) >= (int)$minlen) : TRUE) && (!is_null($maxlen) ? (strlen($var) <= (int)$maxlen) : TRUE);
}

function tstp_rstr($var, $minlen = NULL, $maxlen = NULL) { return tstp_range_string($var, $minlen, $maxlen); }
function tstp_rs($var, $minlen = NULL, $maxlen = NULL) { return tstp_range_string($var, $minlen, $maxlen); }


?>